package com.xxzuibang.day6.doublearray;

import java.util.Scanner;

//使用二维数组打印一个杨辉三角
public class Test01 {
    public static void main(String[] args) {
/*        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要打印的杨辉三角行数：");
        int n=sc.nextInt();
        int[][] yangHui=new int[n][];
        for (int i = 0; i < yangHui.length; i++) {//遍历yangHui中的每一个元素
            //给每个一维数组开空间
            yangHui[i]=new int[i+1];
            //给每个一维数组赋值
            for (int j = 0; j < yangHui[i].length; j++) {
                //每一行的第一个元素和最后一个元素都是1
                if(j==0||j==yangHui[i].length-1){
                    yangHui[i][j]=1;
                }else{
                    //中间的元素为上一行相邻两个元素的和
                    yangHui[i][j]=yangHui[i-1][j]+yangHui[i-1][j-1];
                }
            }
        }
        //输出杨辉三角
        for (int i = 0; i < yangHui.length; i++) {
            for (int j = 0; j < yangHui[i].length; j++) {//遍历输出该行
                System.out.print(yangHui[i][j]+" ");
            }
            System.out.println( );
        }*/

        //输出杨辉三角
        //1.定义键盘输入函数，用户输入想要打印的杨辉三角行数
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入想要打印杨辉三角的行数：");
        int n=sc.nextInt();
        //2.定义一个二维动态数组，没有给每个一维数组开辟空间
        int[][] arr=new int[n][];
        //3.遍历数组中的每一个元素
        for (int i = 0; i < arr.length; i++) {
            //4.给每个一维数组开辟空间
            arr[i]=new int[i+1];
            //5.给每个一维数组赋值
            for (int j = 0; j < arr[i].length; j++) {
                //每列第一个和每行最后一个元素都是1
                if(j==0||j==arr[i].length-1){
                   arr[i][j]=1;
                }else{
                    //中间的元素等于上一行相邻两个元素的和
                    arr[i][j]=arr[i-1][j]+arr[i-1][j-1];
                }
            }
        }
        //6.遍历输出二维数组
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
                System.out.print(arr[i][j]+" ");
            }
            System.out.println();

        }


























    }
}
